lets_plot.geom_bar

lets_plot.geom_bar(mapping=None, *, data=None, stat=None, position=None, show_legend=None, sampling=None, tooltips=None, **other_args)

Display a bar chart which makes the height of the bar proportional to the number of observed variable values, mapped to x axis.

Parameters
  • mapping (FeatureSpec) – Set of aesthetic mappings created by aes() function. Aesthetic mappings describe the way that variables in the data are mapped to plot “aesthetics”.

  • data (dict or DataFrame) – The data to be displayed in this layer. If None, the default, the data is inherited from the plot data as specified in the call to ggplot.

  • stat (str, default=’count’) – The statistical transformation to use on the data for this layer, as a string. Supported transformations: ‘identity’ (leaves the data unchanged), ‘count’ (counts number of points with same x-axis coordinate), ‘bin’ (counts number of points with x-axis coordinate in the same bin), ‘smooth’ (performs smoothing - linear default), ‘density’ (computes and draws kernel density estimate).

  • position (str or FeatureSpec) – Position adjustment, either as a string (‘identity’, ‘stack’, ‘dodge’, …), or the result of a call to a position adjustment function.

  • show_legend (bool, default=True) – False - do not show legend for this layer.

  • sampling (FeatureSpec) – Result of the call to the sampling_xxx() function. Value None (or ‘none’) will disable sampling for this layer.

  • tooltips (layer_tooltips) – Result of the call to the layer_tooltips() function. Specifies appearance, style and content.

  • other_args – Other arguments passed on to the layer. These are often aesthetics settings used to set an aesthetic to a fixed value, like color=’red’, fill=’blue’, size=3 or shape=21. They may also be parameters to the paired geom/stat.

Returns

Geom object specification.

Return type

LayerSpec

Note

geom_bar() makes the height of the bar proportional to the number of observed variable values, mapped to x axis. Is intended to use for discrete data. If used for continuous data with stat=’bin’ produces histogram for binned data. geom_bar() handles no group aesthetics.

geom_bar() understands the following aesthetics mappings:
  • x : x-axis value (this values will produce cases or bins for bars).

  • y : y-axis value (this value will be used to multiply the case’s or bin’s counts).

  • alpha : transparency level of a layer. Understands numbers between 0 and 1.

  • color (colour) : color of a geometry lines. Can be continuous or discrete. For continuous value this will be a color gradient between two colors.

  • fill : color of geometry filling.

  • size : lines width. Defines bar line width.

Examples

>>> import numpy as np
>>> from lets_plot import *
>>> LetsPlot.setup_html()
>>> np.random.seed(42)
>>> data = {'x': np.random.randint(10, size=100)}
>>> ggplot(data, aes(x='x')) + geom_bar()

>>> import numpy as np
>>> from lets_plot import *
>>> LetsPlot.setup_html()
>>> np.random.seed(42)
>>> n = 10
>>> x = np.arange(n)
>>> y = 1 + np.random.randint(5, size=n)
>>> ggplot() + \
>>>     geom_bar(aes(x='x', y='y', fill='x'), data={'x': x, 'y': y}, \
>>>              stat='identity', show_legend=False) + \
>>>     scale_fill_discrete()

>>> import numpy as np
>>> from lets_plot import *
>>> LetsPlot.setup_html()
>>> np.random.seed(42)
>>> n = 5000
>>> x = np.random.normal(size=n)
>>> c = np.random.choice(list('abcde'), size=n)
>>> ggplot({'x': x, 'class': c}, aes(x='x')) + \
>>>     geom_bar(aes(group='class', fill='class', color='class'), \
>>>              stat='bin', sampling=sampling_pick(n=500), alpha=.3, \
>>>              tooltips=layer_tooltips().line('@|@class')
>>>                                       .line('count|@..count..'))